作者: | 来源:互联网 | 2024-10-11 18:16
篇首语:本文由编程笔记#小编为大家整理,主要介绍了PeeringDB初探相关的知识,希望对你有一定的参考价值。
做网络相关工作的,可能需要了解PeeringDB这个网站(https://www.peeringdb.com), 这里有大部分公开注册的 ASN(Autonomous System Number) 以及他们相互直接做Peering的信息,这也是这个网站名字的由来。
据统计,目前该网站中注册的机构有将近25000家,自治网络超过26000个,涉及到的数据中心数量将近5000个。请注意,这是一个社区项目,并不完全保证数据的准确性,同时也并不是所有的信息这里都有,据网站介绍,估计全世界1/3 的ASN是在这里有注册的。
为了方便全世界的用户进行查询,这个网站还公开了一套API,你可以通过https://www.peeringdb.com/apidocs 查看所有的API定义。
我写了一个PowerShell的函数,让你可以一行命令下载所有最新的数据集。
function Get-PeeringDBdata
param(
[Parameter()][string]$path = "c:\\temp\\peeringdb"
)
"fac", "net", "org", "ix", "ixfac", "ixlan", "ixpfx", "poc", "netfac", "netixlan"
| ForEach-Object
$name = $_
(Invoke-RestMethod -Method Get -Uri "https://www.peeringdb.com/api/$name" -Headers @"Authorization" = "Api-Key 替换你的密钥" ).data
| Export-Csv -Path "$path\\$name.csv"
只要运行 Get-PeeringDBdata 就可以在目标目录得到你要的数据集,而且是csv格式,可以很容易导入到其他的数据库系统。
例如我将其导入到kusto数据库中。
然后你可以做各种各样的分析,以及利用它来实现你需要的一些有意思的事情。